#ifndef NODESENTENCE_H__
#define NODESENTENCE_H__

//include header
#include "Node.h"

//using namespace


namespace npInterpreter
{
    //class forward declaration

    class NodeSentence : public Node // class inheritance
    {
        //friend
        
        //embedded type
        
        public: NodeSentence();
        public: virtual ~NodeSentence();
        public: NodeSentence(const NodeSentence& cpy);
        public: NodeSentence& operator=(const NodeSentence& asn);
        public: NodeSentence(NodeSentence&& mov) noexcept;
        public: NodeSentence& operator=(NodeSentence&& mva) noexcept;
        public: virtual NodeSentence* clone() const;

        //other constructors
        public: NodeSentence(Node* direction, Node* action, Node* distance);

        //public methods
        public: virtual string interpret() throw();

        //protected methods

        //private methods

        //protected data

        //private data
        private: Node* direction;
        private: Node* action;
        private: Node* distance;

        //others
    };
} // namespace npInterpreter


#endif //NODESENTENCE_H__
